﻿using System;

namespace Szabalyrendszer
{
    public class Kockadobo
    {
        #region Konstruktor es szingleton

        private static Kockadobo instancia;

        public static Kockadobo Instancia
        {
            get { return instancia ?? (instancia = new Kockadobo()); }
        }

        private Kockadobo()
        {
            kocka = new Random(DateTime.Now.Millisecond);
        }

        #endregion

        #region Kocka generator

        private Random kocka;

        public int Dob(int n, int k, int plusz)
        {
            int eredmeny = plusz;
            for (int i = 0; i < n; i++)
            {
                eredmeny += kocka.Next(k);
            }
            return eredmeny;
        }

        public int Dob(PotencialisSebzes sebzes)
        {
            return Dob(sebzes.N, sebzes.K, sebzes.Plusz);
        }

        public int Dob(int n, int k)
        {
            return Dob(n, k, 0);
        }

        public int Dob(int k)
        {
            return Dob(1, k, 0);
        }

        #endregion
    }
}
